In a computer system, a group of nodes, such as application servers, databases, etc., can act like a single system to enable high availability and/or load balancing and parallel processing. Because they act like a single system, a calling application typically uses a logical node identifier, i.e., a cluster identifier, to request services from the group. The group of nodes appearing as a single system can be referred to as a cluster or tier. The different nodes in the cluster may correspond to a service run on a physical or virtual machine.
Clusters are often elastic and dynamic. In other words, nodes often join the cluster or leave the cluster because of mechanical or communication failures, sometimes using an automatic cluster management system, and there is no way to know in advance which node will be added to a cluster or removed from it.